package org.flik.client.main.service;

import org.flik.server.dto.InitialData;
import org.flik.server.dto.ProjectData;
import org.flik.server.dto.TicketChange;
import org.flik.server.dto.TicketDetail;
import org.flik.server.dto.TiketSearchResult;

import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;

@RemoteServiceRelativePath("userService")
public interface UserService extends RemoteService {

	InitialData fetchLoggedInUserInfo();

	TiketSearchResult fetchTicketSearchResult(Long projectId,
			int firstResult, int resultLimit);

	TicketDetail fetchTicketDetails(Long ticketId);

	void save(TicketChange ticketChange);

	ProjectData fetchProjectData(Long projectId);

	Long create(TicketChange ticketChange, Long projectId);
}
